// EMERGENT GAME TECHNOLOGIES PROPRIETARY INFORMATION
//
// This software is supplied under the terms of a license agreement or
// nondisclosure agreement with Emergent Game Technologies and may not 
// be copied or disclosed except in accordance with the terms of that 
// agreement.
//
//      Copyright (c) 1996-2008 Emergent Game Technologies.
//      All Rights Reserved.
//
// Emergent Game Technologies, Chapel Hill, North Carolina 27517
// http://www.emergent.net

#ifndef NITPOINTERMAP_H
#define NITPOINTERMAP_H

#include "GnTMapBase.h"
#include "GnTPointerAllocator.h"

template <class TKEY, class TVAL,
    class THASH = GnTMapHashFunctor<TKEY>,
    class TEQUALS = GnTMapEqualsFunctor<TKEY> > class GnTPointerMap :
    public GnTMapBase<GnTPointerAllocator<size_t>, TKEY, TVAL, THASH, TEQUALS>
{
public:
     GnTPointerMap(unsigned int uiHashSize = 37) : GnTMapBase<
         GnTPointerAllocator<size_t>, TKEY, TVAL, THASH, TEQUALS>(uiHashSize)
         {}
    ~GnTPointerMap(); 
    virtual GnTMapItem<TKEY, TVAL>* NewItem();
    virtual void DeleteItem(GnTMapItem<TKEY, TVAL>* pkItem);
};

#include "GnTPointerMap.inl"

#endif
